1. Field of the Invention
This invention relates to measurement and data acquisition systems, and, more particularly, to a scan list format for specifying measurement and data acquisition operations.
2. Description of the Relevant Art
Scientists and engineers often use measurement systems to perform a variety of functions, including measurement of a physical phenomena or unit under test (UUT), test and analysis of physical phenomena, process monitoring and control, control of mechanical or electrical machinery, data logging, laboratory research, and analytical chemistry, to name a few examples.
A typical measurement system comprises a computer system with a measurement device or measurement hardware. The measurement device may be a computer-based instrument, a data acquisition device or board, a programmable logic device (PLD), an actuator, or other type of device for acquiring or generating data. The measurement device may be a card or board plugged into one of the I/O slots of the computer system, or a card or board plugged into a chassis, or an external device. For example, in a common measurement system configuration, the measurement hardware is coupled to the computer system via other means such as through a VXI (VME extensions for Instrumentation) bus, a PXI (PCI extensions for Instrumentation) bus, a GPIB (General Purpose Interface Bus), a serial port, parallel port, or Ethernet port of the computer system. Optionally, the measurement system includes signal conditioning devices which receive the field signals and condition the signals to be acquired.
A measurement system may also typically include transducers, sensors, actuators or other detecting (or generating) means for providing xe2x80x9cfieldxe2x80x9d electrical signals representing a process, physical phenomena, equipment being monitored or measured, etc. The field signals are provided to the measurement hardware.
The measurement hardware may be configured and controlled by measurement software executing on the computer system. The measurement software for configuring and controlling the measurement system typically comprises two portions: the device interface or driver level software, and the application software or application. The driver level software serves to interface the measurement hardware to the application. The driver level software may be supplied by the manufacturer of the measurement hardware or by some other third party software vendor. An example of measurement or DAQ driver level software is NI-DAQ from National Instruments Corporation. The application or client is typically developed by the user of the measurement system and is tailored to the particular function which the user intends the measurement system to perform. The measurement hardware manufacturer or third party software vendor sometimes supplies the application software for certain applications which are common, generic or straightforward.
Measurement systems, which may also be generally referred to as data acquisition systems, may include the process of converting a physical phenomenon (such as temperature or pressure) into an electrical signal and measuring the signal in order to extract information. PC-based measurement and data acquisition (DAQ) systems and plug-in boards are used in a wide range of applications in the laboratory, in the field, and on the manufacturing plant floor.
Typically, in a measurement or data acquisition process, analog signals are received by a digitizer, which may reside in a DAQ device or instrumentation device. The analog signals may be received from a sensor, converted to digital data (possibly after being conditioned) by an Analog-to-Digital Converter (ADC), and transmitted to a computer system for storage and/or analysis. The number of bits that the ADC uses to represent the analog signal is referred to as the resolution. The higher the resolution, the higher the number of divisions the voltage range is broken into, and therefore, the smaller the detectable voltage change. A related parameter is the range, which refers to the minimum and maximum voltage levels that the ADC can span.
A common technique for measuring several signals with a single ADC is multiplexing. A multiplexer selects and routes one channel to the ADC for digitizing, then switches to another channel and repeats. Because the same ADC is sampling many channels, the effective rate of each individual channel is reduced in proportion to the number of channels sampled in addition to time needed to switch or settle each channel.
Typically, after the analog signal is selected by the multiplexer, it is amplified by an instrumentation amplifier before being converted to a digital signal by the ADC. The amplifier must be able to track the output of the multiplexer as it switches channels, and to settle quickly to the accuracy of the ADC. Otherwise, the ADC will convert an analog signal that is still in transition from the previous channel value to the current channel value. The duration required for the amplifier to settle to a specified accuracy is called the settling time. In other words, the settling time is the time for the measurement path to come to equilibrium. This value may vary depending on filtering and user signal output impedance.
A measurement may refer to a single value returned to the user, or to multiple values returned to the user. There are typically three time attributes of a measurement: settle time, switch time, and measure time. Settle time is described above. Switch time refers to the time required for switching and configuring the measurement front end. Each switch (and configuration) constitutes a transition in the measurement process and different transitions may take different amounts of time. Measuring time refers to the time required for the ADC to digitize the signal. Increasing the measurement time can increase the resolution or precision of the measurement.
In a typical data acquisition process, a sequence of measurement specifications, referred to as scan list, is executed by the DAQ device 102A to manage the data measurements. Each entry in the scan list typically contains parameters such as gain, mode, polarity, and trigger information, which specify the manner in which a particular measurement is to be made. A scan refers to a sequence of measurements which is repeated. A scan may specify data acquisition among several channels, e.g., Ch0, Ch3, and Ch9 could be controlled by a single scan. The control afforded by the parameters in a typical prior art scan list is extremely limited, in that timing information must generally be set and remain constant throughout the data acquisition process. Additionally, high-level execution control mechanisms are generally not available at the level of scan list execution.
Generally, the time between the same (corresponding) measurements in different scans is fixed, e.g., the time from Ch0 in one scan to Ch0 in the next scan is always the same. Time between different measurements in the same scan is generally not the same, e.g., the time from Ch0 to Ch3 could be different than the time from Ch3 to Ch9.
Poor settling time is a major problem for DAQ systems because the level of inaccuracy usually varies with gain and sampling rate. In other words, there are situations where measurements with fast and slow settling times occur in the same measurement series. Longer settling times are required if gains are switched, but there are currently no mechanisms for lengthening settling times only where needed. Because these errors occur in the analog stages of the DAQ process, no error messages may be returned to the computer when the amplifier does not settle. In typical DAQ systems, a solution is to set the settle time to the greatest value required for a particular channel gain/sample rate. Similar constraints apply to switching times between channels. In many older models of DAQ hardware, inter-channel delay has to be constant and so all switching times must be set to accommodate the slowest speed switch in the process.
Similarly, not all measurements require the same amount of measurement time. In some cases it may be desirable to dwell on a single channel for an extended time period and average the measurements to achieve a low noise measurement, while in other cases perhaps only a quick check is needed. Furthermore, a longer measurement time may be required to measure slow frequency signals vs. fast frequency signals, given the longer waveform periods of the former. However, in current systems the measurement time is generally fixed, and so the longest time period is usually used for all measurements in a series.
Current prior art measurement systems use scan lists for controlling digitizer operations. However, current prior art scan lists have various drawbacks, primarily including a lack of flexibility in programming or controlling the measurement system. Therefore, improved systems and methods are desired for managing and/or controlling measurement and/or data acquisition processes.
One embodiment of the present invention comprises a digitizer operable to be used in a measurement system, wherein the digitizer is operable to acquire data from an external source. In one embodiment, the digitizer comprises a static random access memory (SRAM) which is operable to store a scan list, wherein the scan list comprises a data structure which specifies digitizer operations. The digitizer may further comprise a programmable logic element coupled to the SRAM which is operable to access the scan list from the SRAM and execute the scan list to acquire analog signals from an analog to digital converter (ADC). The programmable logic element may be an FPGA (field programmable gate array) or other type of programmable logic.
The scan list comprises a plurality of entries, wherein each of the plurality of entries comprises parameters specifying digitizer operation. In one embodiment, the parameters comprise one or more of: a switch time specification, a settle time specification, a measure time specification, a looping specification, and a mathematical operation specification. The mathematical operation specification may comprise one or more of a scaling specification (e.g., gain error correction), an adding specification (e.g., offset error correction), and an averaging specification. The looping specification may comprise instructions to repeatedly execute at least one entry in the scan list.
In one embodiment, the digitizer may further comprise an analog to digital converter (ADC) which is operable to receive analog signals from the external source and convert the analog signals to digital signals. The digitizer may also comprise a multiplexer which is operable to read the analog signals from a plurality of channels, a signal conditioner which is operable to receive and modify the analog signals from the multiplexer, and an amplifier which is operable to receive and amplify the analog signals from the signal conditioner.
In one embodiment, the digitizer is comprised in a measurement system that includes a host computer system, wherein the digitizer is coupled to the host computer system. For example, the digitizer may comprise a board comprised in an expansion slot of the host computer system The host computer system may comprise a host memory and a processor, wherein the host memory is operable to store a user application and data acquisition driver software executable by the processor to conduct the data acquisition. In this embodiment, the host computer system is operable to create the scan list and download the scan list to the digitizer.
The various parameters available in the scan list provide a much more flexible and powerful mechanism for controlling measurement system operations. The improved scan list thus provides a more powerful and/or more efficient measurement system.